iT邦幫忙

2021 iThome 鐵人賽

DAY 10
0

昨天我們學完了if、else、else if 的判斷,並且學習了布林值的概念。今天我們來學迴圈。

正文

for迴圈

不囉唆,直接上code!

var sum = 0
for i in 1...10 {
     sum = sum + i
}
print(sum)

這邊在初期其實很難理解到底是什麼意思,就算你翻了100本書,沒有自己多試看看,你可能還是不太理解。

以下是中文翻譯:

var 總和 = 0
for 計算值 有 1...10 {
     總和 = 總和 + 計算值
}
print(總和)

以下為輸出:

概念

for迴圈其實就是重複你給他的指令,在一定的範圍運作你給他的指令,以上這句話我建議你如果不懂,不要用硬記、硬背的方法記下來,建議自己體會。

在這邊是運用range函式去寫,以上的range也就是1到10,但這邊要特別注意for迴圈並不是都使用在重複10次、重複100次等等。他可以用到的範圍很廣,我可以寫一個list裡面包含1、4、5這個數字讓他跑。會這樣說是因為我在學習程式的一開始,我一直搞混,當時我認為for就是重複幾次(然後次數我自己填),要做什麼事我寫在底下,但不完全是這樣。我不太確定後面的課程是否我會去再次提到這件事,但請先把這件事記起來。

for迴圈額外補充

使用reverse

在上面的我們是從1到10,但如果我們今天要使用10到1,可以直接用反轉。

code:

var sum = 0
for i in (1...10).reversed() {
     sum = sum + i
     print(sum)
}

print(sum)

沒錯code就會從10開始+9、+8......一直加到1

結合前面所學的吧

我們昨天學的if現在把它套進來,並且結合之前說的字串。

code:

var sum = 0
for i in (1...10).reversed() {
    if i%2 == 0 {
        sum = sum + i
        print(sum)
    }
}
print("Answer is ",sum)

如果i除以2的餘數為0,那就會把i加進去sum裡面。

我們也可以把i印出來。

var sum = 0
for i in (1...10).reversed() {
    if i%2 == 0 {
        sum = sum + i
        print(i)
    }
}
print("Answer is ",sum)

如果餘數非0那就會略過,跑下一個i。

這邊也就是最基礎判斷是否是偶數的code。


上一篇
Day 9 - 基本語法4 (布林值)
下一篇
Day 11 - 基本語法6(迴圈2)
系列文
程式初學就來點swift吧!教你掌握整個蘋果生態圈!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言